<!doctype html>
<html lang="en" class="page-type-docgen-detailed-toc">
<head prefix="og: http://ogp.me/ns#">
<meta charset="utf-8">
<title>FreeMarker 手册</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="format-detection" content="telephone=no">
<meta property="og:site_name" content="FreeMarker 手册">
<meta property="og:title" content="FreeMarker 手册">
<meta property="og:locale" content="en_US">
<meta property="og:url" content="http://freemarker.org/docs/toc.html">
<link rel="canoical" href="http://freemarker.org/docs/toc.html">
<link rel="icon" href="favicon.png" type="image/png">
<link rel="stylesheet" type="text/css" href="docgen-resources/docgen.min.css">
</head>
<body itemscope itemtype="https://schema.org/Code">
    <meta itemprop="url" content="http://freemarker.org/docs/">
    <meta itemprop="name" content="FreeMarker 手册">

  <!--[if lte IE 9]>
  <div style="background-color: #C00; color: #fff; padding: 12px 24px;">Please use a modern browser to view this website.</div>
  <![endif]--><div class="header-top-bg"><div class="site-width header-top"><a class="logo" href="http://freemarker.org" role="banner">            <img itemprop="image" src="logo.png" alt="FreeMarker">
</a><ul class="tabs"><li><a href="http://freemarker.org/">Home</a></li><li class="current"><a href="index.html">Manual</a></li><li><a class="external" href="http://freemarker.org/docs/api/index.html">Java API</a></li></ul><ul class="secondary-tabs"><li><a class="tab icon-heart" href="http://freemarker.org/contribute.html" title="Contribute"><span>Contribute</span></a></li><li><a class="tab icon-bug" href="https://sourceforge.net/p/freemarker/bugs/new/" title="Report a Bug"><span>Report a Bug</span></a></li><li><a class="tab icon-download" href="http://freemarker.org/freemarkerdownload.html" title="Download"><span>Download</span></a></li></ul></div></div><div class="header-bottom-bg"><div class="site-width search-row"><a href="toc.html" class="navigation-header">Manual</a><div class="navigation-header"></div></div><div class="site-width breadcrumb-row"><ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList"><li class="step-0" itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><span itemprop="name">Table of Contents</span></li></ul><div class="bookmarks" title="Bookmarks"><span class="sr-only">Bookmarks:</span><ul class="bookmark-list"><li><a href="alphaidx.html">Alpha. index</a></li><li><a href="gloss.html">Glossary</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions</a></li><li><a href="ref_builtins_alphaidx.html">?builtins</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_specvar.html">.spec_vars</a></li><li><a href="app_faq.html">FAQ</a></li></ul></div></div></div>    <div class="main-content site-width">
      <div class="content-wrapper">
  <div id="table-of-contents-wrapper" class="col-left">
      <script>var breadcrumb = [];</script>
      <script src="toc.js"></script>
      <script src="docgen-resources/main.min.js"></script>
  </div>
<div class="col-right"><div class="page-content"><div class="page-title"><div class="pagers top"><span class="paging-arrow disabled previous"><span>Previous</span></span><a class="paging-arrow next" href="index.html"><span>Next</span></a></div><div class="title-wrapper">
<h1 class="content-header header-book" id="autoid_1" itemprop="headline">FreeMarker 手册 <span class="subtitle productname">For Freemarker 2.3.23</span>
</h1>
</div></div><div class="page-menu">
<ul><li><a class="page-menu-link" href="index.html" data-menu-target="preface">什么是 FreeMarker?</a></li><li><a class="page-menu-link" href="dgui.html" data-menu-target="dgui">模板开发指南</a><ul><li><a class="page-menu-link" href="dgui_quickstart.html" data-menu-target="dgui_quickstart">入门</a><ul><li><a class="page-menu-link" href="dgui_quickstart_basics.html" data-menu-target="dgui_quickstart_basics">模板 + 数据模型 = 输出</a></li><li><a class="page-menu-link" href="dgui_quickstart_datamodel.html" data-menu-target="dgui_quickstart_datamodel">数据模型一览</a></li><li><a class="page-menu-link" href="dgui_quickstart_template.html" data-menu-target="dgui_quickstart_template">模板一览</a><ul><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_2" data-menu-target="autoid_2">基本指令</a><ul><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_3" data-menu-target="autoid_3">if 指令</a></li><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_4" data-menu-target="autoid_4">list 指令</a></li><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_5" data-menu-target="autoid_5">include 指令</a></li></ul></li><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_6" data-menu-target="autoid_6">联合使用指令</a></li><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_7" data-menu-target="autoid_7">使用内建函数</a></li><li><a class="page-menu-link" href="dgui_quickstart_template.html#autoid_8" data-menu-target="autoid_8">处理不存在的变量</a></li></ul></li></ul></li><li><a class="page-menu-link" href="dgui_datamodel.html" data-menu-target="dgui_datamodel">数值，类型</a><ul><li><a class="page-menu-link" href="dgui_datamodel_basics.html" data-menu-target="dgui_datamodel_basics">基本内容</a><ul><li><a class="page-menu-link" href="dgui_datamodel_basics.html#topic.value" data-menu-target="topic.value">什么是数值？</a></li><li><a class="page-menu-link" href="dgui_datamodel_basics.html#autoid_9" data-menu-target="autoid_9">什么是类型？</a></li><li><a class="page-menu-link" href="dgui_datamodel_basics.html#autoid_10" data-menu-target="autoid_10">数据模型是哈希表</a></li></ul></li><li><a class="page-menu-link" href="dgui_datamodel_types.html" data-menu-target="dgui_datamodel_types">类型</a><ul><li><a class="page-menu-link" href="dgui_datamodel_types.html#dgui_datamodel_scalar" data-menu-target="dgui_datamodel_scalar">标量</a></li><li><a class="page-menu-link" href="dgui_datamodel_types.html#dgui_datamodel_container" data-menu-target="dgui_datamodel_container">容器</a></li><li><a class="page-menu-link" href="dgui_datamodel_types.html#autoid_11" data-menu-target="autoid_11">子程序</a><ul><li><a class="page-menu-link" href="dgui_datamodel_types.html#dgui_datamodel_method" data-menu-target="dgui_datamodel_method">方法和函数</a></li><li><a class="page-menu-link" href="dgui_datamodel_types.html#dgui_datamodel_userdefdir" data-menu-target="dgui_datamodel_userdefdir">用户自定义指令</a></li><li><a class="page-menu-link" href="dgui_datamodel_types.html#autoid_12" data-menu-target="autoid_12">函数/方法和用户自定义指令的比较</a></li></ul></li><li><a class="page-menu-link" href="dgui_datamodel_types.html#autoid_13" data-menu-target="autoid_13">其它</a><ul><li><a class="page-menu-link" href="dgui_datamodel_types.html#dgui_datamodel_node" data-menu-target="dgui_datamodel_node">结点</a></li></ul></li></ul></li></ul></li><li><a class="page-menu-link" href="dgui_template.html" data-menu-target="dgui_template">模板</a><ul><li><a class="page-menu-link" href="dgui_template_overallstructure.html" data-menu-target="dgui_template_overallstructure">总体结构</a></li><li><a class="page-menu-link" href="dgui_template_directives.html" data-menu-target="dgui_template_directives">指令</a></li><li><a class="page-menu-link" href="dgui_template_exp.html" data-menu-target="dgui_template_exp">表达式</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#exp_cheatsheet" data-menu-target="exp_cheatsheet">快速浏览(备忘单)</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct" data-menu-target="dgui_template_exp_direct">直接确定值</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_string" data-menu-target="dgui_template_exp_direct_string">字符串</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_number" data-menu-target="dgui_template_exp_direct_number">数字</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_boolean" data-menu-target="dgui_template_exp_direct_boolean">布尔值</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_seuqence" data-menu-target="dgui_template_exp_direct_seuqence">序列</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_ranges" data-menu-target="dgui_template_exp_direct_ranges">值域</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_direct_hash" data-menu-target="dgui_template_exp_direct_hash">哈希表</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_var" data-menu-target="dgui_template_exp_var">检索变量</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_var_toplevel" data-menu-target="dgui_template_exp_var_toplevel">顶层变量</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_var_hash" data-menu-target="dgui_template_exp_var_hash">从哈希表中检索数据</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_var_sequence" data-menu-target="dgui_template_exp_var_sequence">从序列中检索数据</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_var_special" data-menu-target="dgui_template_exp_var_special">特殊变量</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_stringop" data-menu-target="dgui_template_exp_stringop">字符串操作</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_stringop_interpolation" data-menu-target="dgui_template_exp_stringop_interpolation">插值 (或连接)</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_get_character" data-menu-target="dgui_template_exp_get_character">获取字符</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_stringop_slice" data-menu-target="dgui_template_exp_stringop_slice">字符串切分 (子串)</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_sequenceop" data-menu-target="dgui_template_exp_sequenceop">序列操作</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_sequenceop_cat" data-menu-target="dgui_template_exp_sequenceop_cat">连接</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_seqenceop_slice" data-menu-target="dgui_template_exp_seqenceop_slice">序列切分</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_hashop" data-menu-target="dgui_template_exp_hashop">哈希表操作</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_hashop_cat" data-menu-target="dgui_template_exp_hashop_cat">连接</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_arit" data-menu-target="dgui_template_exp_arit">算数运算</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_comparison" data-menu-target="dgui_template_exp_comparison">比较运算</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_logicalop" data-menu-target="dgui_template_exp_logicalop">逻辑操作</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_builtin" data-menu-target="dgui_template_exp_builtin">内建函数</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_methodcall" data-menu-target="dgui_template_exp_methodcall">方法调用</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_missing" data-menu-target="dgui_template_exp_missing">处理不存在的值</a><ul><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_missing_default" data-menu-target="dgui_template_exp_missing_default">默认值操作符</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_missing_test" data-menu-target="dgui_template_exp_missing_test">不存在值检测操作符</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_assignment" data-menu-target="dgui_template_exp_assignment">赋值操作符</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_parentheses" data-menu-target="dgui_template_exp_parentheses">括号</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_whitespace" data-menu-target="dgui_template_exp_whitespace">表达式中的空格</a></li><li><a class="page-menu-link" href="dgui_template_exp.html#dgui_template_exp_precedence" data-menu-target="dgui_template_exp_precedence">操作符的优先级</a></li></ul></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html" data-menu-target="dgui_template_valueinsertion">插值</a><ul><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#autoid_14" data-menu-target="autoid_14">概览</a></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#autoid_15" data-menu-target="autoid_15">字符串插入指南：不要忘了转义！</a></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#autoid_16" data-menu-target="autoid_16">数字插入指南</a></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#dgui_template_valueinserion_universal_date" data-menu-target="dgui_template_valueinserion_universal_date">日期/时间插入指南</a></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#autoid_17" data-menu-target="autoid_17">布尔值插入指南</a></li><li><a class="page-menu-link" href="dgui_template_valueinsertion.html#autoid_18" data-menu-target="autoid_18">精确的转换规则</a></li></ul></li></ul></li><li><a class="page-menu-link" href="dgui_misc.html" data-menu-target="dgui_misc">其它</a><ul><li><a class="page-menu-link" href="dgui_misc_userdefdir.html" data-menu-target="dgui_misc_userdefdir">自定义指令</a><ul><li><a class="page-menu-link" href="dgui_misc_userdefdir.html#autoid_19" data-menu-target="autoid_19">基本内容</a></li><li><a class="page-menu-link" href="dgui_misc_userdefdir.html#autoid_20" data-menu-target="autoid_20">参数</a></li><li><a class="page-menu-link" href="dgui_misc_userdefdir.html#autoid_21" data-menu-target="autoid_21">嵌套内容</a></li><li><a class="page-menu-link" href="dgui_misc_userdefdir.html#dgui_misc_userdefdir_loopvar" data-menu-target="dgui_misc_userdefdir_loopvar">宏和循环变量</a></li><li><a class="page-menu-link" href="dgui_misc_userdefdir.html#autoid_22" data-menu-target="autoid_22">自定义指令和宏进阶</a></li></ul></li><li><a class="page-menu-link" href="dgui_misc_var.html" data-menu-target="dgui_misc_var">在模板中定义变量</a></li><li><a class="page-menu-link" href="dgui_misc_namespace.html" data-menu-target="dgui_misc_namespace">命名空间</a><ul><li><a class="page-menu-link" href="dgui_misc_namespace.html#autoid_23" data-menu-target="autoid_23">创建一个库</a></li><li><a class="page-menu-link" href="dgui_misc_namespace.html#autoid_24" data-menu-target="autoid_24">在引入的命名空间中编写变量</a></li><li><a class="page-menu-link" href="dgui_misc_namespace.html#autoid_25" data-menu-target="autoid_25">命名空间和数据模型</a></li><li><a class="page-menu-link" href="dgui_misc_namespace.html#autoid_26" data-menu-target="autoid_26">命名空间的生命周期</a></li><li><a class="page-menu-link" href="dgui_misc_namespace.html#autoid_27" data-menu-target="autoid_27">为他人编写库</a></li></ul></li><li><a class="page-menu-link" href="dgui_misc_whitespace.html" data-menu-target="dgui_misc_whitespace">空白处理</a><ul><li><a class="page-menu-link" href="dgui_misc_whitespace.html#dgui_misc_whitespace_stripping" data-menu-target="dgui_misc_whitespace_stripping">剥离空白</a></li><li><a class="page-menu-link" href="dgui_misc_whitespace.html#autoid_28" data-menu-target="autoid_28">使用compress指令</a></li></ul></li><li><a class="page-menu-link" href="dgui_misc_alternativesyntax.html" data-menu-target="dgui_misc_alternativesyntax">替换(方括号)语法</a></li></ul></li></ul></li><li><a class="page-menu-link" href="pgui.html" data-menu-target="pgui">程序开发指南</a><ul><li><a class="page-menu-link" href="pgui_quickstart.html" data-menu-target="pgui_quickstart">入门</a><ul><li><a class="page-menu-link" href="pgui_quickstart_createconfiguration.html" data-menu-target="pgui_quickstart_createconfiguration">创建 Configuration 实例</a></li><li><a class="page-menu-link" href="pgui_quickstart_createdatamodel.html" data-menu-target="pgui_quickstart_createdatamodel">创建数据模型</a></li><li><a class="page-menu-link" href="pgui_quickstart_gettemplate.html" data-menu-target="pgui_quickstart_gettemplate">获取模板</a></li><li><a class="page-menu-link" href="pgui_quickstart_merge.html" data-menu-target="pgui_quickstart_merge">合并模板和数据模型</a></li><li><a class="page-menu-link" href="pgui_quickstart_all.html" data-menu-target="pgui_quickstart_all">将代码放在一起</a></li></ul></li><li><a class="page-menu-link" href="pgui_datamodel.html" data-menu-target="pgui_datamodel">数据模型</a><ul><li><a class="page-menu-link" href="pgui_datamodel_basics.html" data-menu-target="pgui_datamodel_basics">基本内容</a></li><li><a class="page-menu-link" href="pgui_datamodel_scalar.html" data-menu-target="pgui_datamodel_scalar">标量</a><ul><li><a class="page-menu-link" href="pgui_datamodel_scalar.html#autoid_29" data-menu-target="autoid_29">"日期" 类型的难点</a></li></ul></li><li><a class="page-menu-link" href="pgui_datamodel_parent.html" data-menu-target="pgui_datamodel_parent">容器</a><ul><li><a class="page-menu-link" href="pgui_datamodel_parent.html#autoid_30" data-menu-target="autoid_30">哈希表</a></li><li><a class="page-menu-link" href="pgui_datamodel_parent.html#autoid_31" data-menu-target="autoid_31">序列</a></li><li><a class="page-menu-link" href="pgui_datamodel_parent.html#autoid_32" data-menu-target="autoid_32">集合</a></li></ul></li><li><a class="page-menu-link" href="pgui_datamodel_method.html" data-menu-target="pgui_datamodel_method">方法</a></li><li><a class="page-menu-link" href="pgui_datamodel_directive.html" data-menu-target="pgui_datamodel_directive">指令</a><ul><li><a class="page-menu-link" href="pgui_datamodel_directive.html#autoid_33" data-menu-target="autoid_33">示例 1</a></li><li><a class="page-menu-link" href="pgui_datamodel_directive.html#autoid_34" data-menu-target="autoid_34">示例 2</a></li><li><a class="page-menu-link" href="pgui_datamodel_directive.html#autoid_35" data-menu-target="autoid_35">注意</a></li></ul></li><li><a class="page-menu-link" href="pgui_datamodel_node.html" data-menu-target="pgui_datamodel_node">结点变量</a></li><li><a class="page-menu-link" href="pgui_datamodel_objectWrapper.html" data-menu-target="pgui_datamodel_objectWrapper">对象包装</a><ul><li><a class="page-menu-link" href="pgui_datamodel_objectWrapper.html#pgui_datamodel_defaultObjectWrapper" data-menu-target="pgui_datamodel_defaultObjectWrapper">默认对象包装器</a></li><li><a class="page-menu-link" href="pgui_datamodel_objectWrapper.html#pgui_datamodel_customObjectWrappingExample" data-menu-target="pgui_datamodel_customObjectWrappingExample">自定义对象包装示例</a></li></ul></li></ul></li><li><a class="page-menu-link" href="pgui_config.html" data-menu-target="pgui_config">配置(Configuration)</a><ul><li><a class="page-menu-link" href="pgui_config_basics.html" data-menu-target="pgui_config_basics">基本内容</a></li><li><a class="page-menu-link" href="pgui_config_sharedvariables.html" data-menu-target="pgui_config_sharedvariables">共享变量</a></li><li><a class="page-menu-link" href="pgui_config_settings.html" data-menu-target="pgui_config_settings">配置设置</a></li><li><a class="page-menu-link" href="pgui_config_templateloading.html" data-menu-target="pgui_config_templateloading">模板加载</a><ul><li><a class="page-menu-link" href="pgui_config_templateloading.html#autoid_36" data-menu-target="autoid_36">模板加载器</a><ul><li><a class="page-menu-link" href="pgui_config_templateloading.html#autoid_37" data-menu-target="autoid_37">内建模板加载器</a></li><li><a class="page-menu-link" href="pgui_config_templateloading.html#autoid_38" data-menu-target="autoid_38">从多个位置加载模板</a></li><li><a class="page-menu-link" href="pgui_config_templateloading.html#autoid_39" data-menu-target="autoid_39">从其他资源加载模板</a></li><li><a class="page-menu-link" href="pgui_config_templateloading.html#autoid_40" data-menu-target="autoid_40">模板名称(模板路径)</a></li></ul></li><li><a class="page-menu-link" href="pgui_config_templateloading.html#pgui_config_templateloading_caching" data-menu-target="pgui_config_templateloading_caching">模板缓存</a></li></ul></li><li><a class="page-menu-link" href="pgui_config_errorhandling.html" data-menu-target="pgui_config_errorhandling">错误控制</a><ul><li><a class="page-menu-link" href="pgui_config_errorhandling.html#autoid_41" data-menu-target="autoid_41">可能的异常</a></li><li><a class="page-menu-link" href="pgui_config_errorhandling.html#autoid_42" data-menu-target="autoid_42">根据TemplateException来自定义处理方式</a></li><li><a class="page-menu-link" href="pgui_config_errorhandling.html#autoid_43" data-menu-target="autoid_43">在模板中明确地处理错误</a></li></ul></li><li><a class="page-menu-link" href="pgui_config_incompatible_improvements.html" data-menu-target="pgui_config_incompatible_improvements">&quot;不兼容改进&quot;设置</a><ul><li><a class="page-menu-link" href="pgui_config_incompatible_improvements.html#autoid_44" data-menu-target="autoid_44">它要做什么</a></li><li><a class="page-menu-link" href="pgui_config_incompatible_improvements.html#pgui_config_incompatible_improvements_how_to_set" data-menu-target="pgui_config_incompatible_improvements_how_to_set">如何设置</a></li></ul></li></ul></li><li><a class="page-menu-link" href="pgui_misc.html" data-menu-target="pgui_misc">其它</a><ul><li><a class="page-menu-link" href="pgui_misc_var.html" data-menu-target="pgui_misc_var">变量，范围</a></li><li><a class="page-menu-link" href="pgui_misc_charset.html" data-menu-target="pgui_misc_charset">字符集问题</a><ul><li><a class="page-menu-link" href="pgui_misc_charset.html#autoid_45" data-menu-target="autoid_45">输入的字符集</a></li><li><a class="page-menu-link" href="pgui_misc_charset.html#autoid_46" data-menu-target="autoid_46">输出的字符集</a></li></ul></li><li><a class="page-menu-link" href="pgui_misc_multithreading.html" data-menu-target="pgui_misc_multithreading">多线程</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html" data-menu-target="pgui_misc_beanwrapper">Bean的包装</a><ul><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#beanswrapper_hash" data-menu-target="beanswrapper_hash">模板哈希表模型功能(TemplateHashModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_47" data-menu-target="autoid_47">说一点安全性</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_48" data-menu-target="autoid_48">模板标量模型功能(TemplateScalarModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_49" data-menu-target="autoid_49">模板数字模型功能(TemplateNumberModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_50" data-menu-target="autoid_50">模板集合模型功能(TemplateCollectionModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_51" data-menu-target="autoid_51">模板序列模型功能(TemplateSequenceModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#beanswrapper_method" data-menu-target="beanswrapper_method">模板方法模型功能(TemplateMethodModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_52" data-menu-target="autoid_52">解包规则</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#autoid_53" data-menu-target="autoid_53">访问静态方法</a></li><li><a class="page-menu-link" href="pgui_misc_beanwrapper.html#jdk_15_enums" data-menu-target="jdk_15_enums">访问枚举类型</a></li></ul></li><li><a class="page-menu-link" href="pgui_misc_logging.html" data-menu-target="pgui_misc_logging">日志</a><ul><li><a class="page-menu-link" href="pgui_misc_logging.html#autoid_54" data-menu-target="autoid_54">日志库选择</a></li><li><a class="page-menu-link" href="pgui_misc_logging.html#autoid_55" data-menu-target="autoid_55">日志分类</a></li></ul></li><li><a class="page-menu-link" href="pgui_misc_servlet.html" data-menu-target="pgui_misc_servlet">在Servlet中使用FreeMarker</a><ul><li><a class="page-menu-link" href="pgui_misc_servlet.html#pgui_misc_servlet_model2" data-menu-target="pgui_misc_servlet_model2">在&quot;Model 2&quot;中使用FreeMarker</a></li><li><a class="page-menu-link" href="pgui_misc_servlet.html#pgui_misc_servlet_include" data-menu-target="pgui_misc_servlet_include">包含其它Web应用程序资源中的内容</a></li><li><a class="page-menu-link" href="pgui_misc_servlet.html#autoid_56" data-menu-target="autoid_56">在FTL中使用自定义JSP标签</a></li><li><a class="page-menu-link" href="pgui_misc_servlet.html#autoid_57" data-menu-target="autoid_57">在JSP页面中嵌入FTL</a></li></ul></li><li><a class="page-menu-link" href="pgui_misc_secureenv.html" data-menu-target="pgui_misc_secureenv">为FreeMarker配置安全策略</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html" data-menu-target="pgui_misc_xml_legacy">遗留的XML包装实现</a><ul><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_58" data-menu-target="autoid_58">模板标量模型(TemplateScalarModel)</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_59" data-menu-target="autoid_59">模板集合模型(TemplateCollectionModel)</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_60" data-menu-target="autoid_60">模板序列模型(TemplateSequenceModel)</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_61" data-menu-target="autoid_61">模板哈希表模型(TemplateHashModel)</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_62" data-menu-target="autoid_62">模板方法模型(TemplateMethodModel)</a></li><li><a class="page-menu-link" href="pgui_misc_xml_legacy.html#autoid_63" data-menu-target="autoid_63">命名空间处理</a></li></ul></li><li><a class="page-menu-link" href="pgui_misc_ant.html" data-menu-target="pgui_misc_ant">和Ant一起使用FreeMarker</a></li><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html" data-menu-target="pgui_misc_jythonwrapper">Jython包装器</a><ul><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html#autoid_64" data-menu-target="autoid_64">模板哈希表模型功能(TemplateHashModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html#autoid_65" data-menu-target="autoid_65">模板标量模型功能(TemplateScalarModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html#autoid_66" data-menu-target="autoid_66">模板布尔值模型功能(TemplateBooleanModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html#autoid_67" data-menu-target="autoid_67">模板数字模型功能(TemplateNumberModel functionality)</a></li><li><a class="page-menu-link" href="pgui_misc_jythonwrapper.html#autoid_68" data-menu-target="autoid_68">模板序列模型功能(TemplateSequenceModel functionality)</a></li></ul></li></ul></li></ul></li><li><a class="page-menu-link" href="ref.html" data-menu-target="ref">模板语言参考 </a><ul><li><a class="page-menu-link" href="ref_builtins.html" data-menu-target="ref_builtins">内建函数参考</a><ul><li><a class="page-menu-link" href="ref_builtins_alphaidx.html" data-menu-target="ref_builtins_alphaidx">字母顺序索引</a></li><li><a class="page-menu-link" href="ref_builtins_string.html" data-menu-target="ref_builtins_string">字符串内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_boolean" data-menu-target="ref_builtin_boolean">boolean</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_cap_first" data-menu-target="ref_builtin_cap_first">cap_first</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_capitalize" data-menu-target="ref_builtin_capitalize">capitalize</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_chop_linebreak" data-menu-target="ref_builtin_chop_linebreak">chop_linebreak</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_contains" data-menu-target="ref_builtin_contains">contains</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_string_date" data-menu-target="ref_builtin_string_date">date, time, datetime</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_ends_with" data-menu-target="ref_builtin_ends_with">ends_with</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_ensure_ends_with" data-menu-target="ref_builtin_ensure_ends_with">ensure_ends_with</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_ensure_starts_with" data-menu-target="ref_builtin_ensure_starts_with">ensure_starts_with</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_groups" data-menu-target="ref_builtin_groups">groups</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_html" data-menu-target="ref_builtin_html">html</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_index_of" data-menu-target="ref_builtin_index_of">index_of</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_j_string" data-menu-target="ref_builtin_j_string">j_string</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_js_string" data-menu-target="ref_builtin_js_string">js_string</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_json_string" data-menu-target="ref_builtin_json_string">json_string</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_keep_after" data-menu-target="ref_builtin_keep_after">keep_after</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_keep_after_last" data-menu-target="ref_builtin_keep_after_last">keep_after_last</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_keep_before" data-menu-target="ref_builtin_keep_before">keep_before</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_keep_before_last" data-menu-target="ref_builtin_keep_before_last">keep_before_last</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_last_index_of" data-menu-target="ref_builtin_last_index_of">last_index_of</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_left_pad" data-menu-target="ref_builtin_left_pad">left_pad</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_length" data-menu-target="ref_builtin_length">length</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_lower_case" data-menu-target="ref_builtin_lower_case">lower_case</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_matches" data-menu-target="ref_builtin_matches">matches</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_number" data-menu-target="ref_builtin_number">number</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_replace" data-menu-target="ref_builtin_replace">replace</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_right_pad" data-menu-target="ref_builtin_right_pad">right_pad</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_remove_beginning" data-menu-target="ref_builtin_remove_beginning">remove_beginning</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_remove_ending" data-menu-target="ref_builtin_remove_ending">remove_ending</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_rtf" data-menu-target="ref_builtin_rtf">rtf</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_split" data-menu-target="ref_builtin_split">split</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_starts_with" data-menu-target="ref_builtin_starts_with">starts_with</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_string_for_string" data-menu-target="ref_builtin_string_for_string">string (当被用作是字符串值时)</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_substring" data-menu-target="ref_builtin_substring">substring (已废弃)</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_trim" data-menu-target="ref_builtin_trim">trim</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_uncap_first" data-menu-target="ref_builtin_uncap_first">uncap_first</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_upper_case" data-menu-target="ref_builtin_upper_case">upper_case</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_url" data-menu-target="ref_builtin_url">url</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_url_path" data-menu-target="ref_builtin_url_path">url_path</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_word_list" data-menu-target="ref_builtin_word_list">word_list</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_xhtml" data-menu-target="ref_builtin_xhtml">xhtml</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_xml" data-menu-target="ref_builtin_xml">xml</a></li><li><a class="page-menu-link" href="ref_builtins_string.html#ref_builtin_string_flags" data-menu-target="ref_builtin_string_flags">通用标志</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_number.html" data-menu-target="ref_builtins_number">数字内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_abs" data-menu-target="ref_builtin_abs">abs</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_c" data-menu-target="ref_builtin_c">c (当被用作是数字值时)</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_is_infinite" data-menu-target="ref_builtin_is_infinite">is_infinite</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_is_nan" data-menu-target="ref_builtin_is_nan">is_nan</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_lower_abc" data-menu-target="ref_builtin_lower_abc">lower_abc</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_rounding" data-menu-target="ref_builtin_rounding">round, floor, ceiling</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_string_for_number" data-menu-target="ref_builtin_string_for_number">string (当用作是数字类型时)</a></li><li><a class="page-menu-link" href="ref_builtins_number.html#ref_builtin_upper_abc" data-menu-target="ref_builtin_upper_abc">upper_abc</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_date.html" data-menu-target="ref_builtins_date">日期内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_date.html#ref_builtin_date_datetype" data-menu-target="ref_builtin_date_datetype">date, time, datetime (当用于日期/时间/日期-时间值时)</a></li><li><a class="page-menu-link" href="ref_builtins_date.html#ref_builtin_date_if_unknown" data-menu-target="ref_builtin_date_if_unknown">date_if_unknown, time_if_unknown, datetime_if_unknown</a></li><li><a class="page-menu-link" href="ref_builtins_date.html#ref_builtin_date_iso" data-menu-target="ref_builtin_date_iso">iso_...</a></li><li><a class="page-menu-link" href="ref_builtins_date.html#ref_builtin_string_for_date" data-menu-target="ref_builtin_string_for_date">string (当用于日期/时间/日期-时间值时)</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_boolean.html" data-menu-target="ref_builtins_boolean">布尔值内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_boolean.html#ref_builtin_c_boolean" data-menu-target="ref_builtin_c_boolean">c (当用于布尔值时)</a></li><li><a class="page-menu-link" href="ref_builtins_boolean.html#ref_builtin_string_for_boolean" data-menu-target="ref_builtin_string_for_boolean">string (当用于布尔值时)</a></li><li><a class="page-menu-link" href="ref_builtins_boolean.html#ref_builtin_then" data-menu-target="ref_builtin_then">then</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_sequence.html" data-menu-target="ref_builtins_sequence">序列内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_chunk" data-menu-target="ref_builtin_chunk">chunk</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_first" data-menu-target="ref_builtin_first">first</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_join" data-menu-target="ref_builtin_join">join</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_last" data-menu-target="ref_builtin_last">last</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_reverse" data-menu-target="ref_builtin_reverse">reverse</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_seq_contains" data-menu-target="ref_builtin_seq_contains">seq_contains</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_seq_index_of" data-menu-target="ref_builtin_seq_index_of">seq_index_of</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_seq_last_index_of" data-menu-target="ref_builtin_seq_last_index_of">seq_last_index_of</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_size" data-menu-target="ref_builtin_size">size</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_sort" data-menu-target="ref_builtin_sort">sort</a></li><li><a class="page-menu-link" href="ref_builtins_sequence.html#ref_builtin_sort_by" data-menu-target="ref_builtin_sort_by">sort_by</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_hash.html" data-menu-target="ref_builtins_hash">哈希表内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_hash.html#ref_builtin_keys" data-menu-target="ref_builtin_keys">keys</a></li><li><a class="page-menu-link" href="ref_builtins_hash.html#ref_builtin_values" data-menu-target="ref_builtin_values">values</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_node.html" data-menu-target="ref_builtins_node">结点(对于XML)内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_ancestors" data-menu-target="ref_builtin_ancestors">ancestors</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_children" data-menu-target="ref_builtin_children">children</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_node_name" data-menu-target="ref_builtin_node_name">node_name</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_node_namespace" data-menu-target="ref_builtin_node_namespace">node_namespace</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_node_type" data-menu-target="ref_builtin_node_type">node_type</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_parent" data-menu-target="ref_builtin_parent">parent</a></li><li><a class="page-menu-link" href="ref_builtins_node.html#ref_builtin_root" data-menu-target="ref_builtin_root">root</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html" data-menu-target="ref_builtins_loop_var">循环变量内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_counter" data-menu-target="ref_builtin_counter">counter</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_has_next" data-menu-target="ref_builtin_has_next">has_next</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_index" data-menu-target="ref_builtin_index">index</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_is_even_item" data-menu-target="ref_builtin_is_even_item">is_even_item</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_is_first" data-menu-target="ref_builtin_is_first">is_first</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_is_last" data-menu-target="ref_builtin_is_last">is_last</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_is_odd_item" data-menu-target="ref_builtin_is_odd_item">is_odd_item</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_item_cycle" data-menu-target="ref_builtin_item_cycle">item_cycle</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_item_parity" data-menu-target="ref_builtin_item_parity">item_parity</a></li><li><a class="page-menu-link" href="ref_builtins_loop_var.html#ref_builtin_item_parity_cap" data-menu-target="ref_builtin_item_parity_cap">item_parity_cap</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_type_independent.html" data-menu-target="ref_builtins_type_independent">独立类型内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_type_independent.html#ref_builtin_switch" data-menu-target="ref_builtin_switch">switch</a></li></ul></li><li><a class="page-menu-link" href="ref_builtins_expert.html" data-menu-target="ref_builtins_expert">很少使用的和专家级的内建函数</a><ul><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_buitin_api_and_has_api" data-menu-target="ref_buitin_api_and_has_api">api, has_api</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_numType" data-menu-target="ref_builtin_numType">byte, double, float, int, long, short</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_eval" data-menu-target="ref_builtin_eval">eval</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_has_content" data-menu-target="ref_builtin_has_content">has_content</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_interpret" data-menu-target="ref_builtin_interpret">interpret</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_isType" data-menu-target="ref_builtin_isType">is_...</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_namespace" data-menu-target="ref_builtin_namespace">namespace</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_new" data-menu-target="ref_builtin_new">new</a></li><li><a class="page-menu-link" href="ref_builtins_expert.html#ref_builtin_numToDate" data-menu-target="ref_builtin_numToDate">number_to_date, number_to_time, number_to_datetime</a></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_directives.html" data-menu-target="ref_directives">指令参考</a><ul><li><a class="page-menu-link" href="ref_directive_alphaidx.html" data-menu-target="ref_directive_alphaidx">Alphabetical index</a></li><li><a class="page-menu-link" href="ref_directive_assign.html" data-menu-target="ref_directive_assign">assign</a><ul><li><a class="page-menu-link" href="ref_directive_assign.html#autoid_69" data-menu-target="autoid_69">概要</a></li><li><a class="page-menu-link" href="ref_directive_assign.html#autoid_70" data-menu-target="autoid_70">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_attempt.html" data-menu-target="ref_directive_attempt">attempt, recover</a><ul><li><a class="page-menu-link" href="ref_directive_attempt.html#autoid_71" data-menu-target="autoid_71">概要</a></li><li><a class="page-menu-link" href="ref_directive_attempt.html#autoid_72" data-menu-target="autoid_72">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_compress.html" data-menu-target="ref_directive_compress">compress</a><ul><li><a class="page-menu-link" href="ref_directive_compress.html#autoid_73" data-menu-target="autoid_73">概要</a></li><li><a class="page-menu-link" href="ref_directive_compress.html#autoid_74" data-menu-target="autoid_74">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_escape.html" data-menu-target="ref_directive_escape">escape, noescape</a><ul><li><a class="page-menu-link" href="ref_directive_escape.html#autoid_75" data-menu-target="autoid_75">概要</a></li><li><a class="page-menu-link" href="ref_directive_escape.html#autoid_76" data-menu-target="autoid_76">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_flush.html" data-menu-target="ref_directive_flush">flush</a><ul><li><a class="page-menu-link" href="ref_directive_flush.html#autoid_77" data-menu-target="autoid_77">概要</a></li><li><a class="page-menu-link" href="ref_directive_flush.html#autoid_78" data-menu-target="autoid_78">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_ftl.html" data-menu-target="ref_directive_ftl">ftl</a><ul><li><a class="page-menu-link" href="ref_directive_ftl.html#autoid_79" data-menu-target="autoid_79">概要</a></li><li><a class="page-menu-link" href="ref_directive_ftl.html#autoid_80" data-menu-target="autoid_80">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_function.html" data-menu-target="ref_directive_function">function, return</a><ul><li><a class="page-menu-link" href="ref_directive_function.html#autoid_81" data-menu-target="autoid_81">概要</a></li><li><a class="page-menu-link" href="ref_directive_function.html#autoid_82" data-menu-target="autoid_82">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_global.html" data-menu-target="ref_directive_global">global</a><ul><li><a class="page-menu-link" href="ref_directive_global.html#autoid_83" data-menu-target="autoid_83">概要</a></li><li><a class="page-menu-link" href="ref_directive_global.html#autoid_84" data-menu-target="autoid_84">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_if.html" data-menu-target="ref_directive_if">if, else, elseif</a><ul><li><a class="page-menu-link" href="ref_directive_if.html#autoid_85" data-menu-target="autoid_85">概要</a></li><li><a class="page-menu-link" href="ref_directive_if.html#autoid_86" data-menu-target="autoid_86">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_import.html" data-menu-target="ref_directive_import">import</a><ul><li><a class="page-menu-link" href="ref_directive_import.html#autoid_87" data-menu-target="autoid_87">概要</a></li><li><a class="page-menu-link" href="ref_directive_import.html#autoid_88" data-menu-target="autoid_88">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_include.html" data-menu-target="ref_directive_include">include</a><ul><li><a class="page-menu-link" href="ref_directive_include.html#autoid_89" data-menu-target="autoid_89">概要</a></li><li><a class="page-menu-link" href="ref_directive_include.html#autoid_90" data-menu-target="autoid_90">描述</a><ul><li><a class="page-menu-link" href="ref_directive_include.html#ref_directive_include_acquisition" data-menu-target="ref_directive_include_acquisition">使用获得机制</a></li><li><a class="page-menu-link" href="ref_directive_include.html#ref_directive_include_localized" data-menu-target="ref_directive_include_localized">本地化查找</a></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_directive_list.html" data-menu-target="ref_directive_list">list, else, items, sep, break</a><ul><li><a class="page-menu-link" href="ref_directive_list.html#autoid_91" data-menu-target="autoid_91">概要</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_92" data-menu-target="autoid_92">描述</a><ul><li><a class="page-menu-link" href="ref_directive_list.html#autoid_93" data-menu-target="autoid_93">最简形式</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_94" data-menu-target="autoid_94">else 指令</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_95" data-menu-target="autoid_95">items 指令</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_96" data-menu-target="autoid_96">sep 指令</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_97" data-menu-target="autoid_97">break 指令</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_98" data-menu-target="autoid_98">访问迭代状态</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_99" data-menu-target="autoid_99">相互嵌套循环</a></li><li><a class="page-menu-link" href="ref_directive_list.html#autoid_100" data-menu-target="autoid_100">Java程序员请注意</a></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_directive_local.html" data-menu-target="ref_directive_local">local</a><ul><li><a class="page-menu-link" href="ref_directive_local.html#autoid_101" data-menu-target="autoid_101">概要</a></li><li><a class="page-menu-link" href="ref_directive_local.html#autoid_102" data-menu-target="autoid_102">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_macro.html" data-menu-target="ref_directive_macro">macro, nested, return</a><ul><li><a class="page-menu-link" href="ref_directive_macro.html#autoid_103" data-menu-target="autoid_103">概要</a></li><li><a class="page-menu-link" href="ref_directive_macro.html#autoid_104" data-menu-target="autoid_104">描述</a><ul><li><a class="page-menu-link" href="ref_directive_macro.html#autoid_105" data-menu-target="autoid_105">nested</a></li><li><a class="page-menu-link" href="ref_directive_macro.html#autoid_106" data-menu-target="autoid_106">return</a></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_directive_noparse.html" data-menu-target="ref_directive_noparse">noparse</a><ul><li><a class="page-menu-link" href="ref_directive_noparse.html#autoid_107" data-menu-target="autoid_107">概要</a></li><li><a class="page-menu-link" href="ref_directive_noparse.html#autoid_108" data-menu-target="autoid_108">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_nt.html" data-menu-target="ref_directive_nt">nt</a><ul><li><a class="page-menu-link" href="ref_directive_nt.html#autoid_109" data-menu-target="autoid_109">概要</a></li><li><a class="page-menu-link" href="ref_directive_nt.html#autoid_110" data-menu-target="autoid_110">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_setting.html" data-menu-target="ref_directive_setting">setting</a><ul><li><a class="page-menu-link" href="ref_directive_setting.html#autoid_111" data-menu-target="autoid_111">概要</a></li><li><a class="page-menu-link" href="ref_directive_setting.html#autoid_112" data-menu-target="autoid_112">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_stop.html" data-menu-target="ref_directive_stop">stop</a><ul><li><a class="page-menu-link" href="ref_directive_stop.html#autoid_113" data-menu-target="autoid_113">概要</a></li><li><a class="page-menu-link" href="ref_directive_stop.html#autoid_114" data-menu-target="autoid_114">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_switch.html" data-menu-target="ref_directive_switch">switch, case, default, break</a><ul><li><a class="page-menu-link" href="ref_directive_switch.html#autoid_115" data-menu-target="autoid_115">概要</a></li><li><a class="page-menu-link" href="ref_directive_switch.html#autoid_116" data-menu-target="autoid_116">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_t.html" data-menu-target="ref_directive_t">t, lt, rt</a><ul><li><a class="page-menu-link" href="ref_directive_t.html#autoid_117" data-menu-target="autoid_117">概要</a></li><li><a class="page-menu-link" href="ref_directive_t.html#autoid_118" data-menu-target="autoid_118">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_directive_userDefined.html" data-menu-target="ref_directive_userDefined">User-defined directive (&lt;@...&gt;)</a><ul><li><a class="page-menu-link" href="ref_directive_userDefined.html#autoid_119" data-menu-target="autoid_119">概要</a></li><li><a class="page-menu-link" href="ref_directive_userDefined.html#autoid_120" data-menu-target="autoid_120">描述</a><ul><li><a class="page-menu-link" href="ref_directive_userDefined.html#ref_directive_userDefined_entTag" data-menu-target="ref_directive_userDefined_entTag">结束标签</a></li><li><a class="page-menu-link" href="ref_directive_userDefined.html#ref_directive_userDefined_loopVar" data-menu-target="ref_directive_userDefined_loopVar">循环变量</a></li><li><a class="page-menu-link" href="ref_directive_userDefined.html#ref_directive_userDefined_positionalParam" data-menu-target="ref_directive_userDefined_positionalParam">位置参数传递</a></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_directive_visit.html" data-menu-target="ref_directive_visit">visit, recurse, fallback</a><ul><li><a class="page-menu-link" href="ref_directive_visit.html#autoid_121" data-menu-target="autoid_121">概要</a></li><li><a class="page-menu-link" href="ref_directive_visit.html#autoid_122" data-menu-target="autoid_122">描述</a><ul><li><a class="page-menu-link" href="ref_directive_visit.html#autoid_123" data-menu-target="autoid_123">Visit</a></li><li><a class="page-menu-link" href="ref_directive_visit.html#autoid_124" data-menu-target="autoid_124">Recurse</a></li><li><a class="page-menu-link" href="ref_directive_visit.html#autoid_125" data-menu-target="autoid_125">Fallback</a></li></ul></li></ul></li></ul></li><li><a class="page-menu-link" href="ref_specvar.html" data-menu-target="ref_specvar">特殊变量参考</a></li><li><a class="page-menu-link" href="ref_reservednames.html" data-menu-target="ref_reservednames">FTL 中的保留名称</a></li><li><a class="page-menu-link" href="ref_deprecated.html" data-menu-target="ref_deprecated">废弃的 FTL 结构</a><ul><li><a class="page-menu-link" href="ref_depr_directive.html" data-menu-target="ref_depr_directive">废弃的指令列表</a></li><li><a class="page-menu-link" href="ref_depr_builtin.html" data-menu-target="ref_depr_builtin">废弃的内建函数列表</a></li><li><a class="page-menu-link" href="ref_depr_oldmacro.html" data-menu-target="ref_depr_oldmacro">老式的 macro 和 call 指令</a><ul><li><a class="page-menu-link" href="ref_depr_oldmacro.html#autoid_126" data-menu-target="autoid_126">概要</a></li><li><a class="page-menu-link" href="ref_depr_oldmacro.html#autoid_127" data-menu-target="autoid_127">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_depr_transform.html" data-menu-target="ref_depr_transform">转换指令</a><ul><li><a class="page-menu-link" href="ref_depr_transform.html#autoid_128" data-menu-target="autoid_128">概要</a></li><li><a class="page-menu-link" href="ref_depr_transform.html#autoid_129" data-menu-target="autoid_129">描述</a></li></ul></li><li><a class="page-menu-link" href="ref_depr_oldsyntax.html" data-menu-target="ref_depr_oldsyntax">老式 FTL 语法</a></li><li><a class="page-menu-link" href="ref_depr_numerical_interpolation.html" data-menu-target="ref_depr_numerical_interpolation">#{...}: 数字插值</a><ul><li><a class="page-menu-link" href="ref_depr_numerical_interpolation.html#autoid_130" data-menu-target="autoid_130">概要</a></li><li><a class="page-menu-link" href="ref_depr_numerical_interpolation.html#autoid_131" data-menu-target="autoid_131">描述</a></li></ul></li></ul></li></ul></li><li><a class="page-menu-link" href="xgui.html" data-menu-target="xgui">XML处理指南</a><ul><li><a class="page-menu-link" href="xgui_preface.html" data-menu-target="xgui_preface">前言</a></li><li><a class="page-menu-link" href="xgui_expose.html" data-menu-target="xgui_expose">揭示XML文档</a><ul><li><a class="page-menu-link" href="xgui_expose_dom.html" data-menu-target="xgui_expose_dom">结点树</a></li><li><a class="page-menu-link" href="xgui_expose_put.html" data-menu-target="xgui_expose_put">将XML放到数据模型中</a></li></ul></li><li><a class="page-menu-link" href="xgui_imperative.html" data-menu-target="xgui_imperative">必要的XML处理</a><ul><li><a class="page-menu-link" href="xgui_imperative_learn.html" data-menu-target="xgui_imperative_learn">基本内容</a><ul><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_132" data-menu-target="autoid_132">通过名称来访问元素</a></li><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_133" data-menu-target="autoid_133">访问属性</a></li><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_134" data-menu-target="autoid_134">探索DOM树</a></li><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_135" data-menu-target="autoid_135">使用XPath表达式</a></li><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_136" data-menu-target="autoid_136">XML命名空间</a></li><li><a class="page-menu-link" href="xgui_imperative_learn.html#autoid_137" data-menu-target="autoid_137">不要忘了转义！</a></li></ul></li><li><a class="page-menu-link" href="xgui_imperative_formal.html" data-menu-target="xgui_imperative_formal">具体细节</a><ul><li><a class="page-menu-link" href="xgui_imperative_formal.html#autoid_138" data-menu-target="autoid_138">结点序列</a></li></ul></li></ul></li><li><a class="page-menu-link" href="xgui_declarative.html" data-menu-target="xgui_declarative">声明的XML处理</a><ul><li><a class="page-menu-link" href="xgui_declarative_basics.html" data-menu-target="xgui_declarative_basics">基本内容</a></li><li><a class="page-menu-link" href="xgui_declarative_details.html" data-menu-target="xgui_declarative_details">具体细节</a><ul><li><a class="page-menu-link" href="xgui_declarative_details.html#autoid_139" data-menu-target="autoid_139">默认处理器</a></li><li><a class="page-menu-link" href="xgui_declarative_details.html#autoid_140" data-menu-target="autoid_140">访问单独结点</a></li><li><a class="page-menu-link" href="xgui_declarative_details.html#autoid_141" data-menu-target="autoid_141">XML命名空间</a></li></ul></li></ul></li></ul></li><li><a class="page-menu-link" href="app.html" data-menu-target="app">附录</a><ul><li><a class="page-menu-link" href="app_faq.html" data-menu-target="app_faq">FAQ</a></li><li><a class="page-menu-link" href="app_versions.html" data-menu-target="app_versions">版本历史</a><ul><li><a class="page-menu-link" href="versions_2_3_24.html" data-menu-target="versions_2_3_24">2.3.24</a><ul><li><a class="page-menu-link" href="versions_2_3_24.html#autoid_142" data-menu-target="autoid_142">FTL 部分的修改</a></li><li><a class="page-menu-link" href="versions_2_3_24.html#autoid_143" data-menu-target="autoid_143">Java 部分的修改</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_23.html" data-menu-target="versions_2_3_23">2.3.23</a><ul><li><a class="page-menu-link" href="versions_2_3_23.html#autoid_144" data-menu-target="autoid_144">FTL 部分的修改</a></li><li><a class="page-menu-link" href="versions_2_3_23.html#autoid_145" data-menu-target="autoid_145">Java 部分的修改</a></li><li><a class="page-menu-link" href="versions_2_3_23.html#autoid_146" data-menu-target="autoid_146">Other changes</a></li><li><a class="page-menu-link" href="versions_2_3_23.html#autoid_147" data-menu-target="autoid_147">Notes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_22.html" data-menu-target="versions_2_3_22">2.3.22</a><ul><li><a class="page-menu-link" href="versions_2_3_22.html#autoid_148" data-menu-target="autoid_148">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_22.html#autoid_149" data-menu-target="autoid_149">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_22.html#autoid_150" data-menu-target="autoid_150">Notes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_21.html" data-menu-target="versions_2_3_21">2.3.21</a><ul><li><a class="page-menu-link" href="versions_2_3_21.html#autoid_151" data-menu-target="autoid_151">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_21.html#autoid_152" data-menu-target="autoid_152">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_21.html#autoid_153" data-menu-target="autoid_153">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_20.html" data-menu-target="versions_2_3_20">2.3.20</a><ul><li><a class="page-menu-link" href="versions_2_3_20.html#autoid_154" data-menu-target="autoid_154">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_20.html#autoid_155" data-menu-target="autoid_155">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_20.html#autoid_156" data-menu-target="autoid_156">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_19.html" data-menu-target="versions_2_3_19">2.3.19</a><ul><li><a class="page-menu-link" href="versions_2_3_19.html#autoid_157" data-menu-target="autoid_157">FTL部分的修改</a></li><li><a class="page-menu-link" href="versions_2_3_19.html#autoid_158" data-menu-target="autoid_158">Java部分的修改</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_18.html" data-menu-target="versions_2_3_18">2.3.18</a><ul><li><a class="page-menu-link" href="versions_2_3_18.html#autoid_159" data-menu-target="autoid_159">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_18.html#autoid_160" data-menu-target="autoid_160">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_17.html" data-menu-target="versions_2_3_17">2.3.17</a><ul><li><a class="page-menu-link" href="versions_2_3_17.html#autoid_161" data-menu-target="autoid_161">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_17.html#autoid_162" data-menu-target="autoid_162">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_17.html#autoid_163" data-menu-target="autoid_163">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_16.html" data-menu-target="versions_2_3_16">2.3.16</a><ul><li><a class="page-menu-link" href="versions_2_3_16.html#autoid_164" data-menu-target="autoid_164">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_16.html#autoid_165" data-menu-target="autoid_165">Changes on the FTL side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_15.html" data-menu-target="versions_2_3_15">2.3.15</a><ul><li><a class="page-menu-link" href="versions_2_3_15.html#autoid_166" data-menu-target="autoid_166">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_15.html#autoid_167" data-menu-target="autoid_167">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_14.html" data-menu-target="versions_2_3_14">2.3.14</a><ul><li><a class="page-menu-link" href="versions_2_3_14.html#autoid_168" data-menu-target="autoid_168">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_14.html#autoid_169" data-menu-target="autoid_169">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_13.html" data-menu-target="versions_2_3_13">2.3.13</a><ul><li><a class="page-menu-link" href="versions_2_3_13.html#autoid_170" data-menu-target="autoid_170">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_13.html#autoid_171" data-menu-target="autoid_171">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_12.html" data-menu-target="versions_2_3_12">2.3.12</a><ul><li><a class="page-menu-link" href="versions_2_3_12.html#autoid_172" data-menu-target="autoid_172">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_11.html" data-menu-target="versions_2_3_11">2.3.11</a><ul><li><a class="page-menu-link" href="versions_2_3_11.html#autoid_173" data-menu-target="autoid_173">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_11.html#autoid_174" data-menu-target="autoid_174">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_11.html#autoid_175" data-menu-target="autoid_175">Documentation changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_10.html" data-menu-target="versions_2_3_10">2.3.10</a><ul><li><a class="page-menu-link" href="versions_2_3_10.html#autoid_176" data-menu-target="autoid_176">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_10.html#autoid_177" data-menu-target="autoid_177">Changes on the FTL side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_9.html" data-menu-target="versions_2_3_9">2.3.9</a><ul><li><a class="page-menu-link" href="versions_2_3_9.html#autoid_178" data-menu-target="autoid_178">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_8.html" data-menu-target="versions_2_3_8">2.3.8</a><ul><li><a class="page-menu-link" href="versions_2_3_8.html#autoid_179" data-menu-target="autoid_179">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_7.html" data-menu-target="versions_2_3_7">2.3.7</a><ul><li><a class="page-menu-link" href="versions_2_3_7.html#autoid_180" data-menu-target="autoid_180">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_7.html#autoid_181" data-menu-target="autoid_181">Changes on the FTL side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_7rc1.html" data-menu-target="versions_2_3_7rc1">2.3.7 RC1</a><ul><li><a class="page-menu-link" href="versions_2_3_7rc1.html#autoid_182" data-menu-target="autoid_182">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_7rc1.html#autoid_183" data-menu-target="autoid_183">Changes on the FTL side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_6.html" data-menu-target="versions_2_3_6">2.3.6</a><ul><li><a class="page-menu-link" href="versions_2_3_6.html#autoid_184" data-menu-target="autoid_184">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_5.html" data-menu-target="versions_2_3_5">2.3.5</a><ul><li><a class="page-menu-link" href="versions_2_3_5.html#autoid_185" data-menu-target="autoid_185">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_5.html#autoid_186" data-menu-target="autoid_186">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_4.html" data-menu-target="versions_2_3_4">2.3.4</a><ul><li><a class="page-menu-link" href="versions_2_3_4.html#autoid_187" data-menu-target="autoid_187">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_4.html#autoid_188" data-menu-target="autoid_188">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_4.html#autoid_189" data-menu-target="autoid_189">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_3.html" data-menu-target="versions_2_3_3">2.3.3</a><ul><li><a class="page-menu-link" href="versions_2_3_3.html#autoid_190" data-menu-target="autoid_190">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_3.html#autoid_191" data-menu-target="autoid_191">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_3.html#autoid_192" data-menu-target="autoid_192">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_2.html" data-menu-target="versions_2_3_2">2.3.2</a><ul><li><a class="page-menu-link" href="versions_2_3_2.html#autoid_193" data-menu-target="autoid_193">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_3_1.html" data-menu-target="versions_2_3_1">2.3.1</a><ul><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_194" data-menu-target="autoid_194">Possible backward compatibility issue</a></li><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_195" data-menu-target="autoid_195">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_196" data-menu-target="autoid_196">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_197" data-menu-target="autoid_197">Other changes</a></li><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_198" data-menu-target="autoid_198">The history of the releases before the final version</a><ul><li><a class="page-menu-link" href="versions_2_3_1.html#autoid_199" data-menu-target="autoid_199">Differences between the preview release and final
release</a></li></ul></li></ul></li><li><a class="page-menu-link" href="versions_2_3.html" data-menu-target="versions_2_3">2.3</a><ul><li><a class="page-menu-link" href="versions_2_3.html#autoid_200" data-menu-target="autoid_200">Non backward-compatible changes!</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_201" data-menu-target="autoid_201">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_202" data-menu-target="autoid_202">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_203" data-menu-target="autoid_203">Other changes</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_204" data-menu-target="autoid_204">The history of the releases before the final version</a><ul><li><a class="page-menu-link" href="versions_2_3.html#autoid_205" data-menu-target="autoid_205">Differences between the final release and Release Candidate
4</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_206" data-menu-target="autoid_206">Differences between the Release Candidate 4 and Release
Candidate 3</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_207" data-menu-target="autoid_207">Differences between the Release Candidate 3 and Release
Candidate 2</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_208" data-menu-target="autoid_208">Differences between the Release Candidate 2 and Release
Candidate 1</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_209" data-menu-target="autoid_209">Differences between the Release Candidate 1 and Preview 16
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_210" data-menu-target="autoid_210">Differences between the Preview 16 and Preview 15
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_211" data-menu-target="autoid_211">Differences between the Preview 15 and Preview 14
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_212" data-menu-target="autoid_212">Differences between the Preview 14 and Preview 13
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_213" data-menu-target="autoid_213">Differences between the Preview 13 and Preview 12
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_214" data-menu-target="autoid_214">Differences between the Preview 12 and Preview 11
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_215" data-menu-target="autoid_215">Differences between the Preview 11 and Preview 10
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_216" data-menu-target="autoid_216">Differences between the Preview 10 and Preview 9
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_217" data-menu-target="autoid_217">Differences between the Preview 9 and Preview 8
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_218" data-menu-target="autoid_218">Differences between the Preview 8 and Preview 7
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_219" data-menu-target="autoid_219">Differences between the Preview 7 and Preview 6
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_220" data-menu-target="autoid_220">Differences between the Preview 6 and Preview 5
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_221" data-menu-target="autoid_221">Differences between the Preview 5 and Preview 4
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_222" data-menu-target="autoid_222">Differences between the Preview 4 and Preview 3
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_223" data-menu-target="autoid_223">Differences between the Preview 3 and Preview 2
releases</a></li><li><a class="page-menu-link" href="versions_2_3.html#autoid_224" data-menu-target="autoid_224">Differences between the Preview 2 and Preview 1
releases</a></li></ul></li></ul></li><li><a class="page-menu-link" href="versions_2_2_8.html" data-menu-target="versions_2_2_8">2.2.8</a><ul><li><a class="page-menu-link" href="versions_2_2_8.html#autoid_225" data-menu-target="autoid_225">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_2_8.html#autoid_226" data-menu-target="autoid_226">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_2_8.html#autoid_227" data-menu-target="autoid_227">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_7.html" data-menu-target="versions_2_2_7">2.2.7</a><ul><li><a class="page-menu-link" href="versions_2_2_7.html#autoid_228" data-menu-target="autoid_228">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_6.html" data-menu-target="versions_2_2_6">2.2.6</a><ul><li><a class="page-menu-link" href="versions_2_2_6.html#autoid_229" data-menu-target="autoid_229">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_2_6.html#autoid_230" data-menu-target="autoid_230">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_2_6.html#autoid_231" data-menu-target="autoid_231">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_5.html" data-menu-target="versions_2_2_5">2.2.5</a><ul><li><a class="page-menu-link" href="versions_2_2_5.html#autoid_232" data-menu-target="autoid_232">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_4.html" data-menu-target="versions_2_2_4">2.2.4</a><ul><li><a class="page-menu-link" href="versions_2_2_4.html#autoid_233" data-menu-target="autoid_233">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_2_4.html#autoid_234" data-menu-target="autoid_234">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_3.html" data-menu-target="versions_2_2_3">2.2.3</a><ul><li><a class="page-menu-link" href="versions_2_2_3.html#autoid_235" data-menu-target="autoid_235">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_2_3.html#autoid_236" data-menu-target="autoid_236">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_2.html" data-menu-target="versions_2_2_2">2.2.2</a><ul><li><a class="page-menu-link" href="versions_2_2_2.html#autoid_237" data-menu-target="autoid_237">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2_1.html" data-menu-target="versions_2_2_1">2.2.1</a><ul><li><a class="page-menu-link" href="versions_2_2_1.html#autoid_238" data-menu-target="autoid_238">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_2_1.html#autoid_239" data-menu-target="autoid_239">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_2.html" data-menu-target="versions_2_2">2.2</a><ul><li><a class="page-menu-link" href="versions_2_2.html#autoid_240" data-menu-target="autoid_240">Non backward-compatible changes!</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_241" data-menu-target="autoid_241">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_242" data-menu-target="autoid_242">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_243" data-menu-target="autoid_243">Other changes</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_244" data-menu-target="autoid_244">The history of the releases before the final version</a><ul><li><a class="page-menu-link" href="versions_2_2.html#autoid_245" data-menu-target="autoid_245">Differences between the final and RC2 releases</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_246" data-menu-target="autoid_246">Differences between the RC2 and RC1 releases</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_247" data-menu-target="autoid_247">Differences between the Preview 2 and RC1 releases</a></li><li><a class="page-menu-link" href="versions_2_2.html#autoid_248" data-menu-target="autoid_248">Differences between the Preview 1 and Preview 2
releases</a></li></ul></li></ul></li><li><a class="page-menu-link" href="versions_2_1_5.html" data-menu-target="versions_2_1_5">2.1.5</a><ul><li><a class="page-menu-link" href="versions_2_1_5.html#autoid_249" data-menu-target="autoid_249">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_1_4.html" data-menu-target="versions_2_1_4">2.1.4</a><ul><li><a class="page-menu-link" href="versions_2_1_4.html#autoid_250" data-menu-target="autoid_250">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_1_3.html" data-menu-target="versions_2_1_3">2.1.3</a><ul><li><a class="page-menu-link" href="versions_2_1_3.html#autoid_251" data-menu-target="autoid_251">Changes on the FTL side</a></li><li><a class="page-menu-link" href="versions_2_1_3.html#autoid_252" data-menu-target="autoid_252">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_1_2.html" data-menu-target="versions_2_1_2">2.1.2</a><ul><li><a class="page-menu-link" href="versions_2_1_2.html#autoid_253" data-menu-target="autoid_253">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="versions_2_1_2.html#autoid_254" data-menu-target="autoid_254">Other changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_1_1.html" data-menu-target="versions_2_1_1">2.1.1</a><ul><li><a class="page-menu-link" href="versions_2_1_1.html#autoid_255" data-menu-target="autoid_255">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="versions_2_1_1.html#autoid_256" data-menu-target="autoid_256">Changes on the Java side</a></li></ul></li><li><a class="page-menu-link" href="versions_2_1.html" data-menu-target="versions_2_1">2.1</a><ul><li><a class="page-menu-link" href="versions_2_1.html#autoid_257" data-menu-target="autoid_257">Changes in FTL (FreeMarker Template Language)</a></li><li><a class="page-menu-link" href="versions_2_1.html#autoid_258" data-menu-target="autoid_258">Changes on the Java side</a></li><li><a class="page-menu-link" href="versions_2_1.html#autoid_259" data-menu-target="autoid_259">Other changes</a></li><li><a class="page-menu-link" href="versions_2_1.html#autoid_260" data-menu-target="autoid_260">Differences between the RC1 and final release</a></li></ul></li><li><a class="page-menu-link" href="versions_2_01.html" data-menu-target="versions_2_01">2.01</a></li><li><a class="page-menu-link" href="versions_2_0.html" data-menu-target="versions_2_0">2.0</a><ul><li><a class="page-menu-link" href="versions_2_0.html#autoid_261" data-menu-target="autoid_261">Bugfixes</a></li><li><a class="page-menu-link" href="versions_2_0.html#autoid_262" data-menu-target="autoid_262">Changes to the Template language</a></li><li><a class="page-menu-link" href="versions_2_0.html#autoid_263" data-menu-target="autoid_263">Changes to the API</a></li><li><a class="page-menu-link" href="versions_2_0.html#autoid_264" data-menu-target="autoid_264">Miscellany</a></li></ul></li><li><a class="page-menu-link" href="versions_2_0RC3.html" data-menu-target="versions_2_0RC3">2.0 RC3</a><ul><li><a class="page-menu-link" href="versions_2_0RC3.html#autoid_265" data-menu-target="autoid_265">Bug Fixes</a></li><li><a class="page-menu-link" href="versions_2_0RC3.html#autoid_266" data-menu-target="autoid_266">Changes to the Template Language</a></li><li><a class="page-menu-link" href="versions_2_0RC3.html#autoid_267" data-menu-target="autoid_267">API changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_0RC2.html" data-menu-target="versions_2_0RC2">2.0 RC2</a><ul><li><a class="page-menu-link" href="versions_2_0RC2.html#autoid_268" data-menu-target="autoid_268">Changes to Template Language</a></li><li><a class="page-menu-link" href="versions_2_0RC2.html#autoid_269" data-menu-target="autoid_269">API Changes</a></li></ul></li><li><a class="page-menu-link" href="versions_2_0RC1.html" data-menu-target="versions_2_0RC1">2.0 RC1</a><ul><li><a class="page-menu-link" href="versions_2_0RC1.html#autoid_270" data-menu-target="autoid_270">Support for Numerical operations, both arithmetic and
boolean, as well as numerical ranges.</a></li><li><a class="page-menu-link" href="versions_2_0RC1.html#autoid_271" data-menu-target="autoid_271">API Changes</a></li><li><a class="page-menu-link" href="versions_2_0RC1.html#autoid_272" data-menu-target="autoid_272">Syntactical Miscellany</a></li></ul></li></ul></li><li><a class="page-menu-link" href="app_install.html" data-menu-target="app_install">Installing FreeMarker</a></li><li><a class="page-menu-link" href="app_legal.html" data-menu-target="app_legal">Legal</a><ul><li><a class="page-menu-link" href="app_license.html" data-menu-target="app_license">License</a></li><li><a class="page-menu-link" href="app_eccn.html" data-menu-target="app_eccn">Export Control</a></li></ul></li></ul></li><li><a class="page-menu-link" href="gloss.html" data-menu-target="gloss">Glossary</a></li><li><a class="page-menu-link" href="alphaidx.html" data-menu-target="alphaidx">字母顺序索引</a></li></ul> </div><div class="bottom-pagers-wrapper"><div class="pagers bottom"><span class="paging-arrow disabled previous"><span>Previous</span></span><a class="paging-arrow next" href="index.html"><span>Next</span></a></div></div></div></div>      </div>
    </div>
<div class="site-footer"><div class="site-width"><div class="footer-top"><div class="col-left sitemap"><div class="column"><h3 class="column-header">Overview</h3><ul><li><a href="http://freemarker.org/index.html">What is FreeMarker?</a></li><li><a href="http://freemarker.org/freemarkerdownload.html">Download</a></li><li><a href="app_versions.html">Version history</a></li><li><a href="http://freemarker.org/history.html">About us</a></li><li><a itemprop="license" href="app_license.html">License</a></li></ul></div><div class="column"><h3 class="column-header">Handy stuff</h3><ul><li><a href="http://freemarker-online.kenshoo.com/">Try template online</a></li><li><a href="dgui_template_exp.html#exp_cheatsheet">Expressions cheatsheet</a></li><li><a href="ref_directive_alphaidx.html">#directives</a></li><li><a href="ref_builtins_alphaidx.html">?built_ins</a></li><li><a href="ref_specvar.html">.special_vars</a></li></ul></div><div class="column"><h3 class="column-header">Community</h3><ul><li><a href="https://github.com/nanlei/freemarker/tree/manual-zh-2.3-gae/src/manual">Chinese Manual on Github</a></li><li><a href="https://github.com/freemarker/freemarker">FreeMarker on Github</a></li><li><a href="https://twitter.com/freemarker">Follow us on Twitter</a></li><li><a href="https://sourceforge.net/p/freemarker/bugs/new/">Report a bug</a></li><li><a href="http://stackoverflow.com/questions/ask?tags=freemarker">Ask a question</a></li><li><a href="http://freemarker.org/mailing-lists.html">Mailing lists</a></li></ul></div></div><div class="col-right"><ul class="social-icons"><li><a class="github" href="https://github.com/freemarker/freemarker">Github</a></li><li><a class="twitter" href="https://twitter.com/freemarker">Twitter</a></li><li><a class="stack-overflow" href="http://stackoverflow.com/questions/ask?tags=freemarker">Stack Overflow</a></li></ul><a class="xxe" href="http://www.xmlmind.com/xmleditor/" rel="nofollow" title="Edited with XMLMind XML Editor"><span>Edited with XMLMind XML Editor</span></a></div></div><div class="footer-bottom"><p><span class="generated-for-product">Generated for: Freemarker 2.3.23</span><span class="last-updated"> Last generated:
<time itemprop="dateModified" datetime="2015-09-18T14:38:51Z" title="Friday, September 18, 2015 2:38:51 PM GMT">2015-09-18 14:38:51 GMT</time></span></p> <p class="copyright">
© <span itemprop="copyrightYear">1999</span>–2015
<a itemtype="http://schema.org/Organization" itemprop="copyrightHolder" href="http://freemarker.org">The FreeMarker Project</a>. All rights reserved. </p>
</div></div></div></body>
</html>
